Micron Document
welo git mirrors

Node / public / reticulum / commits / c14f6aa

Commit c14f6aa14aae5db8718ccefa024be0f65bc550a2


Parents : 77fe621
Author : Mark Qvist <mark@unsigned.io>
Date : 2021-09-25T21:39:31+02:00

Updated documentation

Changes
Diff

diff --git a/docs/manual/.buildinfo b/docs/manual/.buildinfo
index 73fac0d99..ca1af37b7 100644
--- a/docs/manual/.buildinfo
+++ b/docs/manual/.buildinfo
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: ca50760ac810704080bd9b8fd39823dc
+config: bf2e68cefd79a49afe077549bac593bf
tags: 645f666f9bcd5a90fca523b33c5a78b7

diff --git a/docs/manual/_sources/gettingstartedfast.rst.txt b/docs/manual/_sources/gettingstartedfast.rst.txt
index 9082e99e2..8f65586db 100644
--- a/docs/manual/_sources/gettingstartedfast.rst.txt
+++ b/docs/manual/_sources/gettingstartedfast.rst.txt
@@ -23,14 +23,35 @@ You can install Nomad Network via pip:
.. code::
- # Install
+ # Install ...
pip3 install nomadnet
- # And run
+ # ... and run
nomadnet
+Creating a Network With Reticulum
+=============================================
+
+To create a network, you will need to specify one or more *interfaces* for
+Reticulum to use. This is done in the Reticulum configuration file, which by
+default is located at ``~/.reticulum/config``.
+
+When Reticulum is started for the first time, it will create a default
+configuration file, with one active interface. This default interface uses
+your existing ethernet network (if there is one), and only allows you to
+communicate with other Reticulum peers within your local broadcast domain.
+
+To communicate further, you will have to add one or more interfaces. The default
+configuration includes a number of examples, ranging from using TCP over the
+internet, to LoRa and Packet Radio interfaces.
+
+Possibly, the examples in the config file are enough to gen you started. If
+you want more information, you can read the :ref:`Interfaces<interfaces-main>`
+chapter of this manual.
+
+
Develop a Program with Reticulum
===========================================
If you want to develop programs that use Reticulum, the easiest way to get
@@ -56,7 +77,7 @@ don't use pip, but try this recipe:
.. code::
# Install dependencies
- pip3 install cryptography pyserial
+ pip3 install cryptography pyserial netifaces
# Clone repository
git clone https://github.com/markqvist/Reticulum.git

diff --git a/docs/manual/_sources/index.rst.txt b/docs/manual/_sources/index.rst.txt
index bafc699d7..418fc0cf6 100644
--- a/docs/manual/_sources/index.rst.txt
+++ b/docs/manual/_sources/index.rst.txt
@@ -10,6 +10,7 @@ the development of Reticulum itself.
whatis
gettingstartedfast
+ networks
understanding
reference
examples

diff --git a/docs/manual/_sources/whatis.rst.txt b/docs/manual/_sources/whatis.rst.txt
index 9b9e1280a..9c8b21997 100644
--- a/docs/manual/_sources/whatis.rst.txt
+++ b/docs/manual/_sources/whatis.rst.txt
@@ -6,9 +6,9 @@ Reticulum is a cryptography-based networking stack for wide-area networks built
Reticulum allows you to build very wide-area networks with off-the-shelf tools, and offers end-to-end encryption, autoconfiguring cryptographically backed multi-hop transport, efficient addressing, unforgeable packet acknowledgements and more.
-Reticulum is a complete networking stack, and does not use IP or higher layers, although it is easy to utilise IP (with TCP or UDP) as the underlying carrier for Reticulum. It is therefore trivial to tunnel Reticulum over the Internet or private IP networks. Reticulum is built directly on cryptographic principles, allowing resilience and stable functionality in open and trustless networks.
+Reticulum is a complete networking stack, and does not need IP or higher layers, although it is easy to utilise IP (with TCP or UDP) as the underlying carrier for Reticulum. It is therefore trivial to tunnel Reticulum over the Internet or private IP networks. Reticulum is built directly on cryptographic principles, allowing resilience and stable functionality in open and trustless networks.
-No kernel modules or drivers are required. Reticulum runs completely in userland, and can run on practically any system that runs Python 3.
+No kernel modules or drivers are required. Reticulum runs completely in userland, and can run on practically any system that runs Python 3. Reticulum runs well even on small single-board computers like the Pi Zero.
Current Status

diff --git a/docs/manual/_static/documentation_options.js b/docs/manual/_static/documentation_options.js
index dd0fc0e87..ee435f44f 100644
--- a/docs/manual/_static/documentation_options.js
+++ b/docs/manual/_static/documentation_options.js
@@ -1,6 +1,6 @@
var DOCUMENTATION_OPTIONS = {
URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'),
- VERSION: '0.2.5 beta',
+ VERSION: '0.2.6 beta',
LANGUAGE: 'None',
COLLAPSE_INDEX: false,
BUILDER: 'html',

diff --git a/docs/manual/examples.html b/docs/manual/examples.html
index 15101a2c7..cfd0cd919 100644
--- a/docs/manual/examples.html
+++ b/docs/manual/examples.html
@@ -5,7 +5,7 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>Examples &#8212; Reticulum Network Stack 0.2.5 beta documentation</title>
+ <title>Examples &#8212; Reticulum Network Stack 0.2.6 beta documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/classic.css" />
@@ -27,7 +27,7 @@
<li class="right" >
<a href="reference.html" title="API Reference"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Examples</a></li>
</ul>
</div>
@@ -2319,7 +2319,7 @@ interface to efficiently pass files of any size over a Reticulum <a class="refer
<li class="right" >
<a href="reference.html" title="API Reference"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Examples</a></li>
</ul>
</div>

diff --git a/docs/manual/genindex.html b/docs/manual/genindex.html
index def006470..feed7c3fc 100644
--- a/docs/manual/genindex.html
+++ b/docs/manual/genindex.html
@@ -5,7 +5,7 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>Index &#8212; Reticulum Network Stack 0.2.5 beta documentation</title>
+ <title>Index &#8212; Reticulum Network Stack 0.2.6 beta documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/classic.css" />
@@ -23,7 +23,7 @@
<li class="right" style="margin-right: 10px">
<a href="#" title="General Index"
accesskey="I">index</a></li>
- <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Index</a></li>
</ul>
</div>
@@ -255,10 +255,14 @@
<h2 id="N">N</h2>
<table style="width: 100%" class="indextable genindextable"><tr>
<td style="width: 33%; vertical-align: top;"><ul>
- <li><a href="reference.html#RNS.Link.no_inbound_for">no_inbound_for() (RNS.Link method)</a>
+ <li><a href="reference.html#RNS.Transport.next_hop">next_hop() (RNS.Transport static method)</a>
+</li>
+ <li><a href="reference.html#RNS.Transport.next_hop_interface">next_hop_interface() (RNS.Transport static method)</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
+ <li><a href="reference.html#RNS.Link.no_inbound_for">no_inbound_for() (RNS.Link method)</a>
+</li>
<li><a href="reference.html#RNS.Link.no_outbound_for">no_outbound_for() (RNS.Link method)</a>
</li>
</ul></td>
@@ -412,7 +416,7 @@
<li class="right" style="margin-right: 10px">
<a href="#" title="General Index"
>index</a></li>
- <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Index</a></li>
</ul>
</div>

diff --git a/docs/manual/gettingstartedfast.html b/docs/manual/gettingstartedfast.html
index 8e4b6a97b..13694d568 100644
--- a/docs/manual/gettingstartedfast.html
+++ b/docs/manual/gettingstartedfast.html
@@ -5,7 +5,7 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>Getting Started Fast &#8212; Reticulum Network Stack 0.2.5 beta documentation</title>
+ <title>Getting Started Fast &#8212; Reticulum Network Stack 0.2.6 beta documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/classic.css" />
@@ -16,7 +16,7 @@
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
- <link rel="next" title="Understanding Reticulum" href="understanding.html" />
+ <link rel="next" title="Building Networks" href="networks.html" />
<link rel="prev" title="What is Reticulum?" href="whatis.html" />
</head><body>
<div class="related" role="navigation" aria-label="related navigation">
@@ -26,12 +26,12 @@
<a href="genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
- <a href="understanding.html" title="Understanding Reticulum"
+ <a href="networks.html" title="Building Networks"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="whatis.html" title="What is Reticulum?"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Getting Started Fast</a></li>
</ul>
</div>
@@ -56,14 +56,30 @@ provides a basic encrypted communications suite built completely on Reticulum.</
in the development for the messaging and information-sharing protocol
<a class="reference external" href="https://github.com/markqvist/lxmf">LXMF</a>, another project built with Reticulum.</p>
<p>You can install Nomad Network via pip:</p>
-<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="c1"># Install</span>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="c1"># Install ...</span>
<span class="n">pip3</span> <span class="n">install</span> <span class="n">nomadnet</span>
-<span class="c1"># And run</span>
+<span class="c1"># ... and run</span>
<span class="n">nomadnet</span>
</pre></div>
</div>
</div>
+<div class="section" id="creating-a-network-with-reticulum">
+<h2>Creating a Network With Reticulum<a class="headerlink" href="#creating-a-network-with-reticulum" title="Permalink to this headline">¶</a></h2>
+<p>To create a network, you will need to specify one or more <em>interfaces</em> for
+Reticulum to use. This is done in the Reticulum configuration file, which by
+default is located at <code class="docutils literal notranslate"><span class="pre">~/.reticulum/config</span></code>.</p>
+<p>When Reticulum is started for the first time, it will create a default
+configuration file, with one active interface. This default interface uses
+your existing ethernet network (if there is one), and only allows you to
+communicate with other Reticulum peers within your local broadcast domain.</p>
+<p>To communicate further, you will have to add one or more interfaces. The default
+configuration includes a number of examples, ranging from using TCP over the
+internet, to LoRa and Packet Radio interfaces.</p>
+<p>Possibly, the examples in the config file are enough to gen you started. If
+you want more information, you can read the <a class="reference internal" href="networks.html#interfaces-main"><span class="std std-ref">Interfaces</span></a>
+chapter of this manual.</p>
+</div>
<div class="section" id="develop-a-program-with-reticulum">
<h2>Develop a Program with Reticulum<a class="headerlink" href="#develop-a-program-with-reticulum" title="Permalink to this headline">¶</a></h2>
<p>If you want to develop programs that use Reticulum, the easiest way to get
@@ -82,7 +98,7 @@ likely be to look at some <a class="reference internal" href="examples.html#exam
utilities, you’ll want to get the latest source from GitHub. In that case,
don’t use pip, but try this recipe:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="c1"># Install dependencies</span>
-<span class="n">pip3</span> <span class="n">install</span> <span class="n">cryptography</span> <span class="n">pyserial</span>
+<span class="n">pip3</span> <span class="n">install</span> <span class="n">cryptography</span> <span class="n">pyserial</span> <span class="n">netifaces</span>
<span class="c1"># Clone repository</span>
<span class="n">git</span> <span class="n">clone</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">markqvist</span><span class="o">/</span><span class="n">Reticulum</span><span class="o">.</span><span class="n">git</span>
@@ -129,6 +145,7 @@ don’t use pip, but try this recipe:</p>
<ul>
<li><a class="reference internal" href="#">Getting Started Fast</a><ul>
<li><a class="reference internal" href="#try-using-a-reticulum-based-program">Try Using a Reticulum-based Program</a></li>
+<li><a class="reference internal" href="#creating-a-network-with-reticulum">Creating a Network With Reticulum</a></li>
<li><a class="reference internal" href="#develop-a-program-with-reticulum">Develop a Program with Reticulum</a></li>
<li><a class="reference internal" href="#participate-in-reticulum-development">Participate in Reticulum Development</a></li>
</ul>
@@ -139,8 +156,8 @@ don’t use pip, but try this recipe:</p>
<p class="topless"><a href="whatis.html"
title="previous chapter">What is Reticulum?</a></p>
<h4>Next topic</h4>
- <p class="topless"><a href="understanding.html"
- title="next chapter">Understanding Reticulum</a></p>
+ <p class="topless"><a href="networks.html"
+ title="next chapter">Building Networks</a></p>
<div role="note" aria-label="source link">
<h3>This Page</h3>
<ul class="this-page-menu">
@@ -169,12 +186,12 @@ don’t use pip, but try this recipe:</p>
<a href="genindex.html" title="General Index"
>index</a></li>
<li class="right" >
- <a href="understanding.html" title="Understanding Reticulum"
+ <a href="networks.html" title="Building Networks"
>next</a> |</li>
<li class="right" >
<a href="whatis.html" title="What is Reticulum?"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Getting Started Fast</a></li>
</ul>
</div>

diff --git a/docs/manual/index.html b/docs/manual/index.html
index d85c2cb53..4692f3329 100644
--- a/docs/manual/index.html
+++ b/docs/manual/index.html
@@ -5,7 +5,7 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>Reticulum Network Stack Manual &#8212; Reticulum Network Stack 0.2.5 beta documentation</title>
+ <title>Reticulum Network Stack Manual &#8212; Reticulum Network Stack 0.2.6 beta documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/classic.css" />
@@ -27,7 +27,7 @@
<li class="right" >
<a href="whatis.html" title="What is Reticulum?"
accesskey="N">next</a> |</li>
- <li class="nav-item nav-item-0"><a href="#">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="#">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Reticulum Network Stack Manual</a></li>
</ul>
</div>
@@ -54,10 +54,22 @@ the development of Reticulum itself.</p>
</li>
<li class="toctree-l1"><a class="reference internal" href="gettingstartedfast.html">Getting Started Fast</a><ul>
<li class="toctree-l2"><a class="reference internal" href="gettingstartedfast.html#try-using-a-reticulum-based-program">Try Using a Reticulum-based Program</a></li>
+<li class="toctree-l2"><a class="reference internal" href="gettingstartedfast.html#creating-a-network-with-reticulum">Creating a Network With Reticulum</a></li>
<li class="toctree-l2"><a class="reference internal" href="gettingstartedfast.html#develop-a-program-with-reticulum">Develop a Program with Reticulum</a></li>
<li class="toctree-l2"><a class="reference internal" href="gettingstartedfast.html#participate-in-reticulum-development">Participate in Reticulum Development</a></li>
</ul>
</li>
+<li class="toctree-l1"><a class="reference internal" href="networks.html">Building Networks</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="networks.html#concepts-overview">Concepts &amp; Overview</a></li>
+<li class="toctree-l2"><a class="reference internal" href="networks.html#example-scenarios">Example Scenarios</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="networks.html#interconnected-lora-sites">Interconnected LoRa Sites</a></li>
+<li class="toctree-l3"><a class="reference internal" href="networks.html#bridging-over-the-internet">Bridging Over the Internet</a></li>
+<li class="toctree-l3"><a class="reference internal" href="networks.html#growth-and-convergence">Growth and Convergence</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="networks.html#supported-interfaces">Supported Interfaces</a></li>
+</ul>
+</li>
<li class="toctree-l1"><a class="reference internal" href="understanding.html">Understanding Reticulum</a><ul>
<li class="toctree-l2"><a class="reference internal" href="understanding.html#motivation">Motivation</a></li>
<li class="toctree-l2"><a class="reference internal" href="understanding.html#goals">Goals</a></li>
@@ -168,7 +180,7 @@ the development of Reticulum itself.</p>
<li class="right" >
<a href="whatis.html" title="What is Reticulum?"
>next</a> |</li>
- <li class="nav-item nav-item-0"><a href="#">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="#">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Reticulum Network Stack Manual</a></li>
</ul>
</div>

diff --git a/docs/manual/objects.inv b/docs/manual/objects.inv
index 94c9a43f3..467c3521c 100644
Binary files a/docs/manual/objects.inv and b/docs/manual/objects.inv differ

diff --git a/docs/manual/reference.html b/docs/manual/reference.html
index b2e1fd7d7..979eb624b 100644
--- a/docs/manual/reference.html
+++ b/docs/manual/reference.html
@@ -5,7 +5,7 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>API Reference &#8212; Reticulum Network Stack 0.2.5 beta documentation</title>
+ <title>API Reference &#8212; Reticulum Network Stack 0.2.6 beta documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/classic.css" />
@@ -31,7 +31,7 @@
<li class="right" >
<a href="understanding.html" title="Understanding Reticulum"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">API Reference</a></li>
</ul>
</div>
@@ -51,7 +51,7 @@
<span id="api-reticulum"></span><h3>Reticulum<a class="headerlink" href="#reticulum" title="Permalink to this headline">¶</a></h3>
<dl class="py class">
<dt class="sig sig-object py" id="RNS.Reticulum">
-<em class="property"><span class="pre">class</span> </em><span class="sig-prename descclassname"><span class="pre">RNS.</span></span><span class="sig-name descname"><span class="pre">Reticulum</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">configdir</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#RNS.Reticulum" title="Permalink to this definition">¶</a></dt>
+<em class="property"><span class="pre">class</span> </em><span class="sig-prename descclassname"><span class="pre">RNS.</span></span><span class="sig-name descname"><span class="pre">Reticulum</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">configdir</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">loglevel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#RNS.Reticulum" title="Permalink to this definition">¶</a></dt>
<dd><p>This class is used to initialise access to Reticulum within a
program. You must create exactly one instance of this class before
carrying out any other RNS operations, such as creating destinations
@@ -1128,6 +1128,32 @@ Transport system of Reticulum.</p>
</dl>
</dd></dl>
+<dl class="py method">
+<dt class="sig sig-object py" id="RNS.Transport.next_hop">
+<em class="property"><span class="pre">static</span> </em><span class="sig-name descname"><span class="pre">next_hop</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">destination_hash</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#RNS.Transport.next_hop" title="Permalink to this definition">¶</a></dt>
+<dd><dl class="field-list simple">
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><p><strong>destination_hash</strong> – A destination hash as <em>bytes</em>.</p>
+</dd>
+<dt class="field-even">Returns</dt>
+<dd class="field-even"><p>The destination hash as <em>bytes</em> for the next hop to the specified destination, or <em>None</em> if the next hop is unknown.</p>
+</dd>
+</dl>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="RNS.Transport.next_hop_interface">
+<em class="property"><span class="pre">static</span> </em><span class="sig-name descname"><span class="pre">next_hop_interface</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">destination_hash</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#RNS.Transport.next_hop_interface" title="Permalink to this definition">¶</a></dt>
+<dd><dl class="field-list simple">
+<dt class="field-odd">Parameters</dt>
+<dd class="field-odd"><p><strong>destination_hash</strong> – A destination hash as <em>bytes</em>.</p>
+</dd>
+<dt class="field-even">Returns</dt>
+<dd class="field-even"><p>The interface for the next hop to the specified destination, or <em>None</em> if the interface is unknown.</p>
+</dd>
+</dl>
+</dd></dl>
+
<dl class="py method">
<dt class="sig sig-object py" id="RNS.Transport.request_path">
<em class="property"><span class="pre">static</span> </em><span class="sig-name descname"><span class="pre">request_path</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">destination_hash</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#RNS.Transport.request_path" title="Permalink to this definition">¶</a></dt>
@@ -1212,7 +1238,7 @@ will announce it.</p>
<li class="right" >
<a href="understanding.html" title="Understanding Reticulum"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">API Reference</a></li>
</ul>
</div>

diff --git a/docs/manual/search.html b/docs/manual/search.html
index 2efe7fa7d..7c830e5b1 100644
--- a/docs/manual/search.html
+++ b/docs/manual/search.html
@@ -5,7 +5,7 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>Search &#8212; Reticulum Network Stack 0.2.5 beta documentation</title>
+ <title>Search &#8212; Reticulum Network Stack 0.2.6 beta documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/classic.css" />
@@ -29,7 +29,7 @@
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
accesskey="I">index</a></li>
- <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Search</a></li>
</ul>
</div>
@@ -85,7 +85,7 @@
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
>index</a></li>
- <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Search</a></li>
</ul>
</div>

diff --git a/docs/manual/searchindex.js b/docs/manual/searchindex.js
index 09e32d0e4..c82ad7819 100644
--- a/docs/manual/searchindex.js
+++ b/docs/manual/searchindex.js
@@ -1 +1 @@
-Search.setIndex({docnames:["examples","gettingstartedfast","index","reference","understanding","whatis"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["examples.rst","gettingstartedfast.rst","index.rst","reference.rst","understanding.rst","whatis.rst"],objects:{"RNS.Destination":{announce:[3,1,1,""],app_and_aspects_from_name:[3,1,1,""],clear_default_app_data:[3,1,1,""],create_keys:[3,1,1,""],decrypt:[3,1,1,""],deregister_request_handler:[3,1,1,""],encrypt:[3,1,1,""],full_name:[3,1,1,""],get_private_key:[3,1,1,""],hash:[3,1,1,""],hash_from_name_and_identity:[3,1,1,""],load_private_key:[3,1,1,""],register_request_handler:[3,1,1,""],set_default_app_data:[3,1,1,""],set_link_established_callback:[3,1,1,""],set_packet_callback:[3,1,1,""],set_proof_requested_callback:[3,1,1,""],set_proof_strategy:[3,1,1,""],sign:[3,1,1,""]},"RNS.Identity":{CURVE:[3,2,1,""],KEYSIZE:[3,2,1,""],TRUNCATED_HASHLENGTH:[3,2,1,""],decrypt:[3,1,1,""],encrypt:[3,1,1,""],from_bytes:[3,1,1,""],from_file:[3,1,1,""],full_hash:[3,1,1,""],get_private_key:[3,1,1,""],get_public_key:[3,1,1,""],get_random_hash:[3,1,1,""],load_private_key:[3,1,1,""],load_public_key:[3,1,1,""],recall:[3,1,1,""],recall_app_data:[3,1,1,""],sign:[3,1,1,""],to_file:[3,1,1,""],truncated_hash:[3,1,1,""],validate:[3,1,1,""]},"RNS.Link":{CURVE:[3,2,1,""],ESTABLISHMENT_TIMEOUT_PER_HOP:[3,2,1,""],KEEPALIVE:[3,2,1,""],get_remote_identity:[3,1,1,""],identify:[3,1,1,""],inactive_for:[3,1,1,""],no_inbound_for:[3,1,1,""],no_outbound_for:[3,1,1,""],request:[3,1,1,""],set_packet_callback:[3,1,1,""],set_remote_identified_callback:[3,1,1,""],set_resource_callback:[3,1,1,""],set_resource_concluded_callback:[3,1,1,""],set_resource_started_callback:[3,1,1,""],set_resource_strategy:[3,1,1,""],teardown:[3,1,1,""]},"RNS.Packet":{ENCRYPTED_MDU:[3,2,1,""],PLAIN_MDU:[3,2,1,""],resend:[3,1,1,""],send:[3,1,1,""]},"RNS.PacketReceipt":{get_rtt:[3,1,1,""],get_status:[3,1,1,""],set_delivery_callback:[3,1,1,""],set_timeout:[3,1,1,""],set_timeout_callback:[3,1,1,""]},"RNS.RequestReceipt":{get_progress:[3,1,1,""],get_request_id:[3,1,1,""],get_response:[3,1,1,""],get_response_time:[3,1,1,""],get_status:[3,1,1,""]},"RNS.Resource":{advertise:[3,1,1,""],cancel:[3,1,1,""],get_progress:[3,1,1,""]},"RNS.Reticulum":{MTU:[3,2,1,""],should_use_implicit_proof:[3,1,1,""],transport_enabled:[3,1,1,""]},"RNS.Transport":{PATHFINDER_M:[3,2,1,""],deregister_announce_handler:[3,1,1,""],has_path:[3,1,1,""],hops_to:[3,1,1,""],register_announce_handler:[3,1,1,""],request_path:[3,1,1,""]},RNS:{Destination:[3,0,1,""],Identity:[3,0,1,""],Link:[3,0,1,""],Packet:[3,0,1,""],PacketReceipt:[3,0,1,""],RequestReceipt:[3,0,1,""],Resource:[3,0,1,""],Reticulum:[3,0,1,""],Transport:[3,0,1,""]}},objnames:{"0":["py","class","Python class"],"1":["py","method","Python method"],"2":["py","attribute","Python attribute"]},objtypes:{"0":"py:class","1":"py:method","2":"py:attribute"},terms:{"0":[0,3,4,5],"00":4,"000":[4,5],"00000000":4,"00000100":4,"00000111":4,"01":4,"01010000":4,"05":0,"1":[0,3,4,5],"10":[0,4],"100":[0,4],"1000":[0,4],"1024":0,"11":4,"1200":4,"128":[3,4,5],"14":4,"141":[],"15":4,"151":4,"18":4,"180":4,"182":[],"2":[0,4],"20":[0,4],"205":[],"211":[],"237":[4,5],"240":[],"25":[0,5],"256":[3,4],"270":4,"2f":0,"3":[0,4,5],"323":[],"33":4,"34":4,"360":3,"3600":0,"383":3,"3e12fc71692f8ec47bc5":1,"4":4,"409":[],"430":4,"45":0,"477":[3,4],"5":[0,3,4],"500":[3,4,5],"512":3,"60":0,"62":[4,5],"7":4,"77":4,"8":0,"80":[3,4],"80e29bf7cccaf31431b3":4,"83":4,"86":[],"868":4,"900":4,"95":4,"abstract":4,"break":[3,4,5],"byte":[0,3,4,5],"case":[1,4],"class":[0,2,5],"default":[0,3,4],"do":[0,1,3,4,5],"float":[0,3],"function":[0,2,3,5],"import":[0,1,4],"int":0,"long":[0,4],"new":[0,3,4],"public":[0,2,3],"return":[0,3],"short":4,"static":3,"throw":[],"true":[0,3],"try":[0,2],"while":[0,3,4,5],A:[0,3,4,5],And:[0,1],As:[3,4,5],At:4,Be:3,But:4,By:[0,3,4],For:[3,4],IN:[0,3],If:[0,1,3,4,5],In:[0,1,3,4,5],It:[0,3,4,5],No:[4,5],On:0,One:3,Or:4,That:4,The:[0,1,2,3,5],There:[4,5],These:4,To:[0,4,5],Will:3,With:4,_:4,__:4,______:4,_______:4,________:4,________________:4,__init__:0,__main__:0,__name__:0,_exit:0,ab:0,abl:[0,3,4],about:[0,3,4],abov:[1,4],absolut:[],accept:[3,4],accept_al:[0,3],accept_app:3,accept_non:3,access:[3,4],accord:4,accordingli:0,acheiv:4,achiev:[3,4],acknowledg:5,act:[3,4],action:0,activ:[0,3,4],actor:4,actual:[0,1,4],ad:[0,3,4,5],add:0,add_argu:0,addit:[4,5],addr1:4,addr2:4,address:[0,3,4,5],adher:3,adress:[0,3,5],advantag:3,advertis:[0,3],advis:4,ae:[4,5],after:[0,4],again:[1,4],against:4,agent:4,agnost:4,agnostic:4,aim:[2,4],air:5,aliv:[3,4],all:[0,2,3,4,5],allow:[0,3,4,5],allow_al:[0,3],allow_list:3,allow_non:3,allowed_list:3,almost:4,along:4,alreadi:[0,4],also:[0,3,4,5],alter:4,altern:0,although:5,alwai:[3,4],amateur:5,amount:[3,4,5],an:[0,1,3,4,5],ani:[0,1,3,4,5],announc:[2,3],announce_handl:0,announced_ident:[0,3],announceloop:0,announcesampl:0,anonym:[3,4],anoth:[1,3,4],answer:4,anyon:[0,3,4],anyth:4,anywher:0,apart:4,api:[1,2,4,5],app:[0,3,4],app_and_aspects_from_nam:3,app_data:[0,3],app_nam:[0,3],app_timeout:0,append:[0,4],appli:4,applic:[0,3,4],approv:4,approxim:4,ar:[0,3,4,5],arbitrari:[3,4],arbritrari:5,area:5,arg:0,argon:0,argpars:0,argument:[0,3],argumentpars:0,around:4,arriv:[0,4],ask:[0,3],aspect:[0,3,4],aspect_filt:[0,3],assign:4,associ:[1,3,4],assum:4,asymmetr:5,attached_interfac:[],attempt:3,attribut:3,audit:5,authent:[3,4,5],author:4,auto:[3,4],auto_compress:3,autoconfigur:5,autom:4,automat:[0,3,4,5],autonom:4,autoomat:0,avail:[0,4,5],averag:4,avoid:4,awai:[0,4],awar:4,ax:5,b:0,back:[0,4,5],band:4,bandwidth:[4,5],bare:0,barrier:4,base:[2,3,4,5],basi:[3,4,5],basic:[0,1,2],baud:4,becaus:4,becki:0,becom:0,been:[0,3,4,5],befor:[0,3,4],begin:[0,3],begun:3,behind:4,being:[3,4],belief:4,below:1,best:[1,4,5],beta:5,between:[0,3,4],bgp:4,bi:4,bidirect:4,binari:[0,2],bit:[3,4,5],blob:[0,4],both:[3,4,5],bp:4,briefli:4,broadcast:[2,3,4],broadcast_destin:0,broadcastloop:0,bug:5,build:[0,4,5],built:[1,4,5],bundl:0,c:[0,4],cad:4,calcul:[3,4],call:[0,3,4,5],callabl:3,callback:[0,3],can:[0,1,2,3,4],cancel:3,cannot:0,capac:4,carambola:0,care:[3,4,5],carri:[3,4],carrier:5,caveat:2,cb:4,cbc:5,cd:1,censor:4,censorship:4,central:4,certain:[0,4],challeng:4,chang:[0,1,3,4,5],channel:[0,4,5],channelarg:0,chapter:[1,4],charact:0,characterist:4,cheap:4,check:[0,3],checksum:[3,5],choos:0,chose:4,chunk:0,ciphertext:3,ciphertext_token:3,cl:0,clear:[0,3,4],clear_default_app_data:3,clear_screen:0,client:[0,1,3],client_connect:0,client_disconnect:0,client_ident:0,client_loop:0,client_packet_receiv:0,client_request:0,clone:1,close:[0,3],closed_callback:3,closer:4,cluster:4,code:[0,4],com:[0,1],combin:4,come:4,command:[0,1],common:4,commun:[0,1,3,4,5],compat:[3,4],complet:[0,1,3,4,5],compon:4,compos:4,compress:[0,3,4],comput:[1,4],concaten:3,concept:4,conclud:[0,3],concurr:4,condit:4,config:[0,1],configarg:0,configdir:3,configpath:0,configur:[0,3,4,5],confirm:[4,5],connect:[0,3,4,5],consequ:4,consid:[4,5],consist:4,constant:[3,4],construct:4,contact:4,contain:[0,3,4],content:[],context:4,control:[0,3,4],conveni:0,convent:0,coordin:[3,4,5],core:[4,5],correct:[0,4],correctli:0,correspond:4,cost:[4,5],could:[0,3,4,5],count:4,counter:0,cover:5,cpu:0,creat:[0,1,3,4],create_kei:3,create_receipt:[0,3],creation:4,creator:4,critic:4,cryptograph:5,cryptographi:[1,4,5],ctrl:0,cull:3,current:[0,2,3,4],current_download:0,current_filenam:0,curv:[3,4,5],curve25519:[3,4,5],custom:[3,4],d:4,daemon:3,dai:4,data:[0,3,4,5],date:0,debian:4,debug:[],decai:4,decid:[3,4],decod:0,decrypt:[3,4],dedic:4,def:0,default_timeout:[],defin:[0,4],definit:4,delai:4,deliv:[0,3],deliveri:[0,3,5],demand:3,demonstr:0,depend:1,deploi:4,deregist:3,deregister_announce_handl:3,deregister_request_handl:3,deriv:[4,5],describ:[3,4],descript:0,design:[4,5],desir:[0,4],destin:[0,1,2],destination_1:0,destination_2:0,destination_clos:0,destination_hash:[0,3],destination_hexhash:0,detail:[0,2,3],detect:0,determin:[3,4],develop:[2,4,5],devic:[2,3,4],dh:3,did:0,differ:[0,1,3,4,5],diffi:[4,5],digit:[4,5],dir:0,direct:[0,3,4],directli:[3,4,5],directori:0,disable_encrypt:[],disappear:[],discard:4,disconnect:0,discoveri:4,discuss:4,disk:[0,3],displai:[0,4],distanc:4,distinct:4,distribut:[0,3,4],divmod:0,document:4,doe:[0,2,3,4],don:[0,1],done:[0,4],dot:4,down:0,downgrad:[],download:0,download_began:0,download_conclud:0,download_finish:0,download_start:0,download_tim:0,driver:5,drop:4,duplex:[4,5],e:0,each:[0,4],earlier:4,eas:4,easi:[4,5],easiest:[1,4],easili:[4,5],ecdh:[4,5],echo:[1,2],echo_destin:0,echo_request:0,ed25519:[4,5],effici:[0,4,5],ei:0,either:4,elif:0,ellipt:[3,4,5],els:[0,4],emploi:4,emptor:2,enabl:3,enable_transport:4,encapsul:5,encod:0,encrypt:[0,1,3,4,5],encrypted_mdu:3,encryptionless:[],end:[0,3,4,5],endpoint:[0,3,4],engin:4,ensur:4,enter:0,entir:4,entiti:4,entri:[0,4],enumer:0,environ:4,environment:4,environmentlogg:4,ephemer:[3,4,5],equal:4,equip:4,equl:[],error:0,essenti:4,establish:[0,3,5],established_callback:3,establishment_timeout_per_hop:3,ethernet:[4,5],even:[4,5],everi:[0,3,4],everyon:4,everyth:[0,4],exact:4,exactli:[3,4],exampl:[1,2,3,4,5],example_util:0,exampleannouncehandl:0,exce:0,except:[0,4],exchang:[3,4,5],execut:[0,3],exhaust:4,exist:[0,4,5],exit:[0,1,3],exit_handl:0,expand:4,expect:[0,3,4],experi:[1,4],experiment:5,explain:3,explan:4,explicit:3,explicitli:[],explor:[0,4,5],expos:3,extend:[0,4],extern:[3,5],extrem:5,fa7ddfab5213f916dea:4,face:1,fact:[4,5],fail:[0,3],failed_callback:[0,3],fals:[0,3],far:4,fast:2,featur:[4,5],feed:3,feedback:0,fernet:5,few:[4,5],field:4,file:[0,1,3,4,5],file_resourc:0,file_s:0,filelist:0,filelist_data:0,filelist_receiv:0,filelist_timeout_job:0,filenam:0,filetransf:[1,2,3],filter:[0,4],find:4,firmwar:4,first:[0,3,4],fit:0,five:0,fix:4,flag:[3,4],flush:0,folder:1,follow:[0,4,5],forcibl:3,foremost:5,form:[3,4],format:[0,2,5],forth:0,forward:[3,4,5],found:[0,1,4],free:5,frequenc:4,friendli:5,from:[0,1,3,4,5],from_byt:3,from_fil:3,fromhex:0,fruit:0,full:[0,3,4],full_hash:3,full_nam:3,fulli:[4,5],funcion:3,fundament:4,further:[1,2],futur:4,g:0,ga:0,gatekeep:4,gener:[0,3,4,5],generalis:5,get:[0,2,3,5],get_private_kei:3,get_progress:[0,3],get_public_kei:3,get_random_hash:[0,3],get_remote_ident:[0,3],get_request_id:3,get_respons:3,get_response_tim:3,get_rtt:[0,3],get_statu:3,gi:0,gigabyt:5,git:1,github:[0,1],give:4,given:4,global:[0,5],go:[0,1,4],goal:2,good:4,got:0,got_respons:0,govern:4,grape:0,great:4,greater:4,group:[3,4],guarante:4,guid:[1,3,4],h:[1,4],ha:[0,3,4,5],had:4,half:[4,5],hand:0,handheld:4,handl:[0,3,4,5],handler:[0,3],happen:[0,3],hardwar:[3,4,5],has_path:[0,3],hasattr:0,hash:[0,1,3,4],hash_from_name_and_ident:3,hashmap:0,have:[0,1,3,4],hazard:3,header:4,header_1:4,header_2:4,header_typ:[],hear:4,heard:[3,4],helium:0,hellman:[4,5],help:[0,4,5],here:[0,4],hexadecim:[0,4],high:[4,5],higher:[4,5],highli:4,hint:0,hit:0,hmac:5,hoc:5,hold:[3,4],hop:[3,4,5],hops_to:3,host:[0,4,5],hour:0,how:[0,4,5],howev:4,http:[0,1],human:[0,3],i:0,id:[3,4],idea:4,ident:[0,2],identif:[2,5],identifi:[0,3,4],identify:4,identifyexampl:0,ie:[],ignor:[3,4],immedi:1,impact:4,implement:[0,3,4,5],implicit:[3,4],inactive_for:3,inbound:3,includ:[0,3,4],incom:[0,3],incompat:[3,4],indefinit:4,independ:3,independt:5,index:[0,2],indirectli:4,individu:4,inevit:4,infer:4,info:[3,4],inform:[0,1,2,3,4],infrastructur:4,ingo:3,initi:[0,3,4],initialis:[0,3],input:0,insert:4,instal:1,instanc:[0,3],instanti:3,instead:[0,4],integr:4,intend:4,intention:4,inter:3,interact:[0,3,4],interest:4,interfac:[0,2,3,4],intern:[3,4],internet:[4,5],interv:3,intiat:0,introduc:4,introduct:2,intuit:5,invalid:[0,3],investig:4,ip:[4,5],is_request:[],is_respons:[],isdir:0,isfil:0,ism:4,its:[3,4],itself:[2,4],iv:5,job:0,join:[0,4],just:[0,4,5],k:0,kbp:4,keep:[0,3,4,5],keepal:[3,4],kei:[0,2,3,5],kept:[3,4],kernel:5,keyboardinterrupt:0,keyerror:3,keypair:4,keysiz:3,ki:0,kill:3,kilomet:4,kind:4,know:[0,3,4],knowledg:4,known:[0,3,4],krypton:0,lack:4,laid:4,larg:[0,4],larger:4,last:[0,3],last_unit:0,latenc:[4,5],later:0,latest:[0,1],latest_client_link:0,launch:1,lavg:4,layer:[4,5],lead:4,learn:[0,4],least:[4,5],leav:4,ledger:4,left:[3,4],len:0,length:[0,3],less:[4,5],let:[0,4],level:4,librari:1,licens:4,light:4,like:[1,3,4],limit:4,line:[0,1,4,5],link:[2,5],link_clos:0,link_establish:0,linkexampl:0,linux:4,list:[0,3,4],list_deliv:0,list_fil:0,list_packet:0,list_receipt:0,list_timeout:0,listdir:0,listen:[0,4],littl:4,lki:4,lkr:4,ll:[0,1,5],ln:1,load:[0,3],load_private_kei:3,load_public_kei:3,local:[0,3,4,5],locat:4,log:0,log_error:0,log_info:0,loglevel:0,longer:[0,4],look:[0,1,4],loop:0,lora:[4,5],lorawan:4,lot:4,low:[4,5],lxmf:1,m:[0,4],mac:4,machin:4,made:[3,4],mai:4,main:0,maintain:4,make:[1,4],malici:4,manag:3,mani:[0,4,5],manipul:4,manual:[0,1,3],mark:4,markqvist:[0,1],master:[0,3],match:0,maximum:[3,4],mcu:4,mdu:0,mean:4,measur:4,mechan:2,medium:[4,5],memori:4,mention:4,menu:0,menu_mod:0,mesh:5,messag:[0,1,3,4],messeng:4,metavar:0,method:[0,3,4],methodolog:4,mhz:4,mi:0,microcontrol:4,microwav:4,might:4,millisecond:0,mind:5,minim:[2,4],minimalsampl:0,minimum:[0,4],minut:[0,4],mode:[0,1,4,5],modem:[3,4,5],modul:[0,4,5],moment:[4,5],monitor:4,moon:0,more:[3,4,5],most:[1,4,5],motiv:2,move:1,mtu:[3,4,5],much:4,multi:[4,5],multilater:4,multipl:[0,4],multipoint:4,must:[0,3,4],my:4,n:0,name:[0,3],namespac:0,nano:1,narg:0,necessari:[1,3,4],necessarili:4,need:[0,2,4,5],neglig:4,neither:4,neon:0,network:[0,1,3,4,5],never:3,newer:4,newest:4,newli:4,next:[1,4],nicknam:4,no_inbound_for:3,no_outbound_for:3,nobl:0,noble_ga:0,noble_gas:0,node:[2,5],nomad:1,nomadnet:1,non:[3,4],none:[0,3,4],normal:0,notat:4,note:[0,4],noth:5,notic:4,notif:[0,3],now:[0,1,4],nt:0,num:0,number:[0,3,4],object:3,obtain:4,occur:5,off:[4,5],offer:[2,3,4],often:4,oganesson:0,old:4,onc:[0,3,4,5],one:[0,3,4,5],onli:[0,3,4,5],onlin:4,open:[0,3,4,5],openmodem:5,oper:[3,4,5],opt:4,optic:5,option:[0,1,3],orient:4,origin:[0,4],original_hash:[],os:[0,4,5],ospf:4,other:[3,4],otherwis:[3,4],our:[0,4],out:[0,3,4,5],outbound:3,outgo:[0,3,4],outlin:[1,4],outward:4,over:[0,3,4,5],overal:4,overcom:4,overhead:4,overrid:0,overview:4,own:[0,1,3,4],owner:[],p:[0,4],pack:0,packb:0,packet:[0,2,5],packet_callback:0,packet_deliv:0,packet_receipt:[0,3],packet_timed_out:0,packet_typ:[],packetreceipt:[0,3],pad:5,page:[2,4],pair:4,palm:0,paramet:3,pars:0,parse_arg:0,parser:0,part:[0,4],particip:[2,4],pass:[0,3,4],path:[0,1,3,4],path_respons:3,pathfind:[],pathfinder_m:3,pattern:4,payload:[3,4],peach:0,peer:[0,3,4],peer_pub_byt:[],peer_sig_pub_byt:[],peopl:4,per:[3,4,5],percent:0,perfect:4,perform:[0,4],period:4,persecut:4,person:4,pet:0,philosophi:4,physic:4,pi:[0,4,5],piec:4,ping:1,pip3:1,pip:1,pkcs7:5,place:4,plain:[0,3,4],plain_mdu:3,plaintext:[0,3],platform:4,pleas:[0,5],plenti:4,plu:4,pmr:4,point:4,pomelo:0,port:[4,5],possess:4,possibl:[3,4,5],potenti:[0,4],practic:[4,5],pre:[3,4],predict:4,prefer:4,prepar:0,prerequisit:3,presenc:3,preserv:3,press:0,pretend:4,pretti:4,prettyhexrep:0,previou:0,previous:[3,4],primari:4,principl:[4,5],print:0,print_filelist:0,print_help:0,print_menu:0,prioriti:4,prioritis:2,privaci:5,privat:[3,4,5],probabl:[0,4,5],procedur:4,process:[1,3,4],product:[],program:[0,2,3,4],program_setup:0,programm:4,programmat:4,progress:[0,3,5],progress_callback:3,project:1,prompt:0,proof:[0,3,4],proof_requested_callback:3,proof_strategi:3,propag:4,properti:3,protocol:[1,2,5],prove:[0,4],prove_al:[0,3],prove_app:3,prove_non:3,proven:[3,4],provid:[0,1,2,3,4,5],prv_byte:3,pub_byt:3,public_inform:0,purchas:[4,5],purg:3,purpos:[3,4],purposefulli:4,put:0,py:[0,1],pyseri:1,python3:1,python:[4,5],q:0,queri:0,queue:4,quinc:0,quit:0,r:[0,4],radio:[3,4,5],radiu:4,radon:0,rais:[0,3],rand:4,randint:0,random:[0,3,4],random_text_gener:0,randomli:[0,4],rang:[0,4,5],raspberri:[4,5],rate:0,rb:0,re:[0,3,4],reach:2,reachabl:[0,3,4],read:[0,1,4],readabl:[0,3,4],readi:[0,1,3],readili:5,real:5,realli:3,reason:4,reassembl:4,recal:[0,3],recall_app_data:3,recap:4,receipt:[0,2,4],receiv:[0,3,4],received_announc:[0,3],recip:1,recipi:4,recommend:[0,4],reconstruct:4,record:4,recreat:4,refer:[0,1,2],regard:4,regist:[0,3],register_announce_handl:[0,3],register_request_handl:[0,3],rel:[4,5],releas:[1,4],relev:[0,3],reli:4,reliabl:[4,5],rem:0,remain:4,rememb:4,remot:[0,3,5],remote_ident:[0,3],remote_identifi:0,remote_identity_hash:[],remote_p:0,remotesensor:4,repeat:1,replac:[1,4],repli:0,replic:4,reply_data:0,reply_text:0,repositori:1,repres:4,represent:[0,4],request:[2,4],request_destin:0,request_fail:0,request_id:[0,3],request_packet:0,request_path:[0,3],request_receipt:[0,3],request_receiv:0,requested_at:[0,3],requestexampl:0,requestreceipt:3,requir:[0,4,5],research:5,resend:3,reserv:4,resili:5,resourc:[0,2],resource_callback:3,resource_sending_conclud:0,resource_strategi:3,respond:[0,3],respons:[2,3],response_callback:[0,3],response_gener:[0,3],response_tim:[],rest:5,result:[0,4],reticulum:0,retransmiss:4,retransmit:4,retri:4,reveal:[3,4],review:5,right:[],rn:[0,1,3],rnode:[4,5],robot:4,rotat:4,round:[0,3],rout:[3,4,5],rprogress:0,rsa:[],rtt:[0,3,4],rttstring:0,rule:4,run:[0,1,3,4,5],runtim:4,rw:4,s:[0,1,4,5],said:4,same:[1,3,4],satisfi:4,save:[3,4],save_error:0,saved_filenam:0,scenario:[1,4],screen:0,search:2,second:[0,3,4,5],secreci:[3,4,5],section:4,secur:[4,5],see:[0,3,4],seen:4,segment_index:[],select:0,self:[0,5],send:[0,3,4],sender:[0,4],sendig:0,sensibl:1,sensor:4,sent:[0,3,4],sentiment:4,separ:4,sequenc:[0,3,4,5],serial:[4,5],serv:[0,4],serve_path:0,server:[0,1],server_callback:0,server_destin:0,server_fil:0,server_ident:0,server_link:0,server_loop:0,server_packet_receiv:0,session:4,set:[0,3,4,5],set_default_app_data:3,set_delivery_callback:[0,3],set_link_closed_callback:0,set_link_established_callback:[0,3],set_packet_callback:[0,3],set_proof_requested_callback:3,set_proof_strategi:[0,3],set_remote_identified_callback:[0,3],set_resource_callback:3,set_resource_concluded_callback:[0,3],set_resource_started_callback:[0,3],set_resource_strategi:[0,3],set_timeout:[0,3],set_timeout_callback:[0,3],setdaemon:0,setup:[0,2],sever:3,sha256:5,sha:[3,4],shall:4,share:[1,3,4],shelf:[4,5],shop:0,shortest:4,should:[0,3,4,5],should_allow_unencrypt:[],should_quit:0,should_use_implicit_proof:3,shown:0,side:5,sign:[3,4],signatur:[3,4,5],significantli:[],similar:5,simpl:[0,4,5],simplest:4,simpli:[0,1,4],simplic:4,sinc:[0,3,4],singl:[0,3,4],singular:4,situat:4,size:[0,3,4],size_str:0,sleep:0,slice:0,slow:[0,4],small:[0,4],so:[0,1,3,4,5],softwar:[4,5],some:[0,1,4],someth:4,somethign:0,soon:3,sort:4,sourc:[0,1,4,5],space:[0,5],span:4,special:4,specif:[0,2,3,5],specifi:[0,3],spectrum:4,split:0,sponsor:5,stabl:[4,5],stack:[0,1,4,5],stage:4,stai:0,standard:4,start:[0,2,3,4],startup:0,state:0,station:4,statist:0,statu:[0,2,3,4],stdout:0,step:1,still:[0,4],stock:0,stop:5,store:[0,4],store_tru:0,str:0,strategi:3,stream:4,strength:5,strictli:4,string:[0,3],structur:4,subject:4,subsequ:4,successful:3,successfulli:0,sucessfulli:4,suffic:4,suffici:4,suffix:0,suit:[1,4],suitabl:[0,4],suppli:[3,4],support:[0,2,4],sy:0,symlink:1,symmetr:[3,4],system:[0,2,3,5],t:[0,1,4],tabl:4,take:[0,1,4,5],taken:[0,4],tangerin:0,target:0,tcp:[4,5],tdata:0,teardown:[0,3],teardown_reason:0,teffect:0,tell:0,temperatur:4,ten:4,term:4,termin:3,terminolog:4,test:4,text:[0,4],tfile:0,than:[0,4],thei:[0,3,4],them:[0,4],thereaft:4,therefor:[4,5],thi:[0,1,2,3,4],though:4,thourough:5,thread:0,three:4,through:[3,4,5],throughout:4,throughput:[4,5],thu:[3,4],ti:[0,4],time:[0,1,3,4],timeout:[0,3],timeout_callback:[],timeoutarg:0,timestr:0,tnc:[3,5],to_fil:3,todai:4,todo:[],togeth:4,token:[3,4],too:[0,4],tool:5,top:4,topic:4,topolog:4,total:[4,5],total_s:0,touch:5,toward:[0,4],traffic:[0,3,4],tramsit:[],transceiv:[4,5],transfer:[0,3,4,5],transfer_s:0,transmiss:4,transmit:[0,4],transpar:4,transport:[0,2,5],transport_en:3,transport_id:[],transport_typ:[],travers:4,treat:4,tri:0,trip:[0,3],trivial:5,truli:4,truncat:[3,4],truncated_hash:3,truncated_hashlength:3,trust:4,trustless:[4,5],ttime:0,ttransfer:0,tunnel:[4,5],tupl:3,two:[0,4],type:[0,2,3],typeerror:3,udp:[4,5],umsgpack:0,uncencrypt:0,underli:5,understand:[1,2],unencrypt:[0,3,4],unequivoc:4,unforg:5,unidentifi:0,uninterest:0,uniqu:[4,5],unit:0,unknown:[0,3,4],unless:[1,3,4],unlicens:4,unpack:0,unpackb:0,unsupport:3,until:[0,3,4],unwant:4,up:[0,4,5],updat:[0,3],upon:[0,4],upset:0,urandom:5,us:[0,2,3,4],usabl:4,usag:[],usb:[4,5],useabl:4,user:[0,1,4],user_input:0,userland:5,utf:0,util:[0,1,4],utilis:[4,5],valid:[0,3,4],valu:[3,4],valueerror:[0,3],variabl:0,varieti:[4,5],variou:[0,4],ve:1,vendor:0,veri:[3,4,5],verif:[3,4],verifi:[0,3,4],versa:5,version:[],vhf:4,via:[1,4],vice:5,view:4,visibl:0,wa:[0,3,4,5],wai:[0,1,4],wait:[0,4],want:[0,1,4,5],warrant:5,wb:0,we:[0,4],well:[3,4,5],went:0,what:[0,1,2,3,4],whatev:[3,4],when:[0,1,3,4],whenev:3,where:[2,3,4],whereupon:4,whether:[0,3,4],which:[0,1,3,4],who:4,wide:[4,5],wifi:[4,5],wildcard:0,window:4,wire:[4,5],wish:4,within:[0,3,4],won:0,work:[4,5],world:5,would:4,write:[0,3],written:4,wrong:0,x25519:[3,4,5],x:4,xenon:0,y:0,ye:4,year:4,yet:[0,4],yi:0,you:[0,1,2,3,4,5],your:[0,1,4,5],yourself:[4,5],z:0,zero:3,zi:0},titles:["Examples","Getting Started Fast","Reticulum Network Stack Manual","API Reference","Understanding Reticulum","What is Reticulum?"],titleterms:{"1":[],"2":[],"class":3,"function":4,"public":4,"try":1,The:4,announc:[0,4],api:3,base:1,basic:4,binari:4,broadcast:0,can:5,caveat:5,current:5,deliveri:[],destin:[3,4],detail:4,develop:1,devic:5,doe:5,echo:0,emptor:5,establish:4,exampl:0,fast:1,filetransf:0,format:4,further:4,get:[1,4],goal:4,ident:[3,4],identif:0,indic:2,interfac:5,introduct:4,kei:4,link:[0,3,4],manual:2,mechan:4,minim:0,motiv:4,name:4,network:2,node:4,offer:5,packet:[3,4],particip:1,pathfind:[],prioritis:4,program:1,protocol:4,proven:[],reach:4,receipt:3,refer:[3,4],request:[0,3],resourc:[3,4],respons:0,reticulum:[1,2,3,4,5],setup:4,specif:4,stack:2,start:1,statu:5,step:[],support:5,system:4,tabl:2,transport:[3,4],type:[4,5],understand:4,us:[1,5],what:5,where:5}})
\ No newline at end of file
+Search.setIndex({docnames:["examples","gettingstartedfast","index","networks","reference","understanding","whatis"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["examples.rst","gettingstartedfast.rst","index.rst","networks.rst","reference.rst","understanding.rst","whatis.rst"],objects:{"RNS.Destination":{announce:[4,1,1,""],app_and_aspects_from_name:[4,1,1,""],clear_default_app_data:[4,1,1,""],create_keys:[4,1,1,""],decrypt:[4,1,1,""],deregister_request_handler:[4,1,1,""],encrypt:[4,1,1,""],full_name:[4,1,1,""],get_private_key:[4,1,1,""],hash:[4,1,1,""],hash_from_name_and_identity:[4,1,1,""],load_private_key:[4,1,1,""],register_request_handler:[4,1,1,""],set_default_app_data:[4,1,1,""],set_link_established_callback:[4,1,1,""],set_packet_callback:[4,1,1,""],set_proof_requested_callback:[4,1,1,""],set_proof_strategy:[4,1,1,""],sign:[4,1,1,""]},"RNS.Identity":{CURVE:[4,2,1,""],KEYSIZE:[4,2,1,""],TRUNCATED_HASHLENGTH:[4,2,1,""],decrypt:[4,1,1,""],encrypt:[4,1,1,""],from_bytes:[4,1,1,""],from_file:[4,1,1,""],full_hash:[4,1,1,""],get_private_key:[4,1,1,""],get_public_key:[4,1,1,""],get_random_hash:[4,1,1,""],load_private_key:[4,1,1,""],load_public_key:[4,1,1,""],recall:[4,1,1,""],recall_app_data:[4,1,1,""],sign:[4,1,1,""],to_file:[4,1,1,""],truncated_hash:[4,1,1,""],validate:[4,1,1,""]},"RNS.Link":{CURVE:[4,2,1,""],ESTABLISHMENT_TIMEOUT_PER_HOP:[4,2,1,""],KEEPALIVE:[4,2,1,""],get_remote_identity:[4,1,1,""],identify:[4,1,1,""],inactive_for:[4,1,1,""],no_inbound_for:[4,1,1,""],no_outbound_for:[4,1,1,""],request:[4,1,1,""],set_packet_callback:[4,1,1,""],set_remote_identified_callback:[4,1,1,""],set_resource_callback:[4,1,1,""],set_resource_concluded_callback:[4,1,1,""],set_resource_started_callback:[4,1,1,""],set_resource_strategy:[4,1,1,""],teardown:[4,1,1,""]},"RNS.Packet":{ENCRYPTED_MDU:[4,2,1,""],PLAIN_MDU:[4,2,1,""],resend:[4,1,1,""],send:[4,1,1,""]},"RNS.PacketReceipt":{get_rtt:[4,1,1,""],get_status:[4,1,1,""],set_delivery_callback:[4,1,1,""],set_timeout:[4,1,1,""],set_timeout_callback:[4,1,1,""]},"RNS.RequestReceipt":{get_progress:[4,1,1,""],get_request_id:[4,1,1,""],get_response:[4,1,1,""],get_response_time:[4,1,1,""],get_status:[4,1,1,""]},"RNS.Resource":{advertise:[4,1,1,""],cancel:[4,1,1,""],get_progress:[4,1,1,""]},"RNS.Reticulum":{MTU:[4,2,1,""],should_use_implicit_proof:[4,1,1,""],transport_enabled:[4,1,1,""]},"RNS.Transport":{PATHFINDER_M:[4,2,1,""],deregister_announce_handler:[4,1,1,""],has_path:[4,1,1,""],hops_to:[4,1,1,""],next_hop:[4,1,1,""],next_hop_interface:[4,1,1,""],register_announce_handler:[4,1,1,""],request_path:[4,1,1,""]},RNS:{Destination:[4,0,1,""],Identity:[4,0,1,""],Link:[4,0,1,""],Packet:[4,0,1,""],PacketReceipt:[4,0,1,""],RequestReceipt:[4,0,1,""],Resource:[4,0,1,""],Reticulum:[4,0,1,""],Transport:[4,0,1,""]}},objnames:{"0":["py","class","Python class"],"1":["py","method","Python method"],"2":["py","attribute","Python attribute"]},objtypes:{"0":"py:class","1":"py:method","2":"py:attribute"},terms:{"0":[0,4,5,6],"00":5,"000":[5,6],"00000000":5,"00000100":5,"00000111":5,"01":5,"01010000":5,"05":0,"1":[0,4,5,6],"10":[0,5],"100":[0,5],"1000":[0,5],"1024":0,"11":5,"1200":5,"128":[4,5,6],"14":5,"141":[],"15":5,"151":5,"18":5,"180":5,"182":[],"2":[0,5],"20":[0,5],"205":[],"211":[],"237":[5,6],"240":[],"25":[0,6],"256":[4,5],"270":5,"2f":0,"3":[0,5,6],"323":[],"33":5,"34":5,"360":4,"3600":0,"383":4,"3e12fc71692f8ec47bc5":1,"4":5,"409":[],"430":5,"45":0,"477":[4,5],"5":[0,4,5],"500":[4,5,6],"512":4,"60":0,"62":[5,6],"7":5,"77":5,"8":0,"80":[4,5],"80e29bf7cccaf31431b3":5,"83":5,"86":[],"868":5,"900":5,"95":5,"abstract":5,"break":[4,5,6],"byte":[0,4,5,6],"case":[1,3,5],"class":[0,2,6],"default":[0,1,3,4,5],"do":[0,1,4,5,6],"float":[0,4],"function":[0,2,3,4,6],"import":[0,1,3,5],"int":0,"long":[0,5],"new":[0,3,4,5],"public":[0,2,4],"return":[0,4],"short":5,"static":4,"throw":[],"true":[0,4],"try":[0,2],"while":[0,3,4,5,6],A:[0,3,4,5,6],And:0,As:[3,4,5,6],At:[3,5],Be:4,But:5,By:[0,4,5],For:[3,4,5],IN:[0,4],If:[0,1,3,4,5,6],In:[0,1,3,4,5,6],It:[0,4,5,6],No:[5,6],On:0,One:4,Or:5,That:5,The:[0,1,2,3,4,6],There:[3,5,6],These:5,To:[0,1,3,5,6],Will:4,With:[2,3,5],_:5,__:5,______:5,_______:5,________:5,________________:5,__init__:0,__main__:0,__name__:0,_exit:0,ab:0,abl:[0,3,4,5],about:[0,3,4,5],abov:[1,5],absolut:[],accept:[4,5],accept_al:[0,4],accept_app:4,accept_non:4,access:[4,5],accord:5,accordingli:0,acheiv:5,achiev:[4,5],acknowledg:6,across:3,act:[4,5],action:0,activ:[0,1,4,5],actor:5,actual:[0,1,5],ad:[0,3,4,5,6],adapt:3,add:[0,1,3],add_argu:0,addit:[5,6],addr1:5,addr2:5,address:[0,3,4,5,6],adher:4,adress:[0,3,4,6],advantag:4,advertis:[0,4],advis:5,ae:[5,6],after:[0,3,5],again:[1,5],against:5,agent:5,agnost:[3,5],agnostic:5,aim:[2,5],air:6,aliv:[4,5],all:[0,2,3,4,5,6],allow:[0,1,3,4,5,6],allow_al:[0,4],allow_list:4,allow_non:4,allowed_list:4,almost:5,along:[3,5],alreadi:[0,3,5],also:[0,3,4,5,6],alter:5,altern:0,although:6,alwai:[4,5],amateur:6,amount:[3,4,5,6],an:[0,1,3,4,5,6],ani:[0,1,3,4,5,6],announc:[2,4],announce_handl:0,announced_ident:[0,4],announceloop:0,announcesampl:0,anonym:[3,4,5],anoth:[1,4,5],answer:5,anyon:[0,3,4,5],anyth:5,anywher:0,apart:5,api:[1,2,5,6],app:[0,4,5],app_and_aspects_from_nam:4,app_data:[0,4],app_nam:[0,4],app_timeout:0,append:[0,5],appli:5,applic:[0,4,5],approv:5,approxim:5,ar:[0,1,3,4,5,6],arbitrari:[4,5],arbritrari:6,area:[3,6],arg:0,argon:0,argpars:0,argument:[0,4],argumentpars:0,around:5,arriv:[0,5],ask:[0,4],aspect:[0,4,5],aspect_filt:[0,4],assign:5,associ:[1,4,5],assum:5,asymmetr:6,attached_interfac:[],attempt:4,attribut:4,audit:6,authent:[4,5,6],author:5,auto:[4,5],auto_compress:4,autoconfigur:6,autom:5,automat:[0,3,4,5,6],autonom:[3,5],autoomat:0,avail:[0,3,5,6],averag:5,avoid:5,awai:[0,3,5],awar:5,ax:6,b:[0,3],back:[0,5,6],backhaul:3,band:5,bandwidth:[3,5,6],bare:0,barrier:5,base:[2,3,4,5,6],basi:[4,5,6],basic:[0,1,2],baud:5,becaus:[3,5],becki:0,becom:[0,3],been:[0,3,4,5,6],befor:[0,4,5],begin:[0,4],begun:4,behind:5,being:[4,5],belief:5,below:1,best:[1,5,6],beta:6,between:[0,3,4,5],bgp:5,bi:5,bidirect:5,billion:3,binari:[0,2],bit:[4,5,6],blob:[0,5],board:6,both:[3,4,5,6],bp:5,bridg:2,briefli:5,broadcast:[1,2,4,5],broadcast_destin:0,broadcastloop:0,bug:6,build:[0,2,5,6],built:[1,5,6],bundl:0,c:[0,3,5],cabl:3,cad:5,calcul:[4,5],call:[0,3,4,5,6],callabl:4,callback:[0,4],can:[0,1,2,3,4,5],cancel:4,candid:3,cannot:0,capac:5,carambola:0,care:[4,5,6],carri:[4,5],carrier:[3,6],caveat:2,cb:5,cbc:6,cd:1,censor:5,censorship:5,central:[3,5],certain:[0,3,5],challeng:5,chang:[0,1,4,5,6],channel:[0,3,5,6],channelarg:0,chapter:[1,3,5],charact:0,characterist:5,cheap:5,check:[0,4],checksum:[4,6],choos:[0,3],chose:5,chosen:3,chunk:0,ciphertext:4,ciphertext_token:4,cl:0,clear:[0,4,5],clear_default_app_data:4,clear_screen:0,client:[0,1,4],client_connect:0,client_disconnect:0,client_ident:0,client_loop:0,client_packet_receiv:0,client_request:0,clone:1,close:[0,4],closed_callback:4,closer:5,cluster:5,code:[0,5],com:[0,1],combin:[3,5],come:5,command:[0,1],common:[3,5],commun:[0,1,3,4,5,6],compat:[4,5],complet:[0,1,3,4,5,6],compon:5,compos:5,compress:[0,4,5],comput:[1,5,6],concaten:4,concept:[2,5],conclud:[0,4],concurr:5,condit:5,config:[0,1,3],configarg:0,configdir:4,configpath:0,configur:[0,1,3,4,5,6],confirm:[5,6],connect:[0,3,4,5,6],consequ:5,consid:[5,6],consist:5,constant:[4,5],construct:5,contact:5,contain:[0,3,4,5],content:3,context:5,control:[0,3,4,5],conveni:0,convent:0,converg:2,coordin:[3,4,5,6],core:[3,5,6],correct:[0,5],correctli:0,correspond:5,cost:[5,6],could:[0,3,4,5,6],count:5,counter:0,cover:6,coverag:3,cpu:0,creat:[0,2,3,4,5],create_kei:4,create_receipt:[0,4],creation:5,creator:5,critic:5,cryptograph:[3,6],cryptographi:[1,5,6],ctrl:0,cull:4,current:[0,2,4,5],current_download:0,current_filenam:0,curv:[3,4,5,6],curve25519:[3,4,5,6],custom:[4,5],d:[3,5],daemon:4,dai:[3,5],data:[0,3,4,5,6],date:0,debian:5,debug:[],decai:5,decid:[3,4,5],decod:0,decrypt:[4,5],dedic:5,def:0,default_timeout:[],defin:[0,3,5],definit:5,degrad:3,delai:5,deliv:[0,4],deliveri:[0,4,6],demand:4,demonstr:0,depend:[1,3],deploi:5,deregist:4,deregister_announce_handl:4,deregister_request_handl:4,deriv:[5,6],describ:[4,5],descript:0,design:[3,5,6],desir:[0,5],destin:[0,1,2,3],destination_1:0,destination_2:0,destination_clos:0,destination_hash:[0,4],destination_hexhash:0,detail:[0,2,4],detect:0,determin:[4,5],develop:[2,5,6],devic:[2,3,4,5],dh:4,did:0,differ:[0,1,3,4,5,6],diffi:[3,5,6],digit:[5,6],dir:0,direct:[0,3,4,5],directli:[4,5,6],directori:0,disable_encrypt:[],disappear:[],discard:5,disconnect:0,discoveri:5,discrimin:3,discuss:5,disk:[0,4],displai:[0,5],distanc:5,distinct:[3,5],distribut:[0,3,4,5],divmod:0,document:5,doe:[0,2,3,4,5],domain:1,don:[0,1,3],done:[0,1,3,5],dori:3,dot:5,down:0,downgrad:[],download:0,download_began:0,download_conclud:0,download_finish:0,download_start:0,download_tim:0,driver:6,drop:5,due:3,duplex:[5,6],e:[0,3],each:[0,3,5],earlier:5,eas:5,easi:[5,6],easier:3,easiest:[1,5],easili:[5,6],ecdh:[5,6],echo:[1,2],echo_destin:0,echo_request:0,ed25519:[5,6],effici:[0,5,6],ei:0,either:[3,5],elif:0,ellipt:[3,4,5,6],els:[0,3,5],emploi:5,emptor:2,enabl:[3,4],enable_transport:5,encapsul:6,encod:0,encrypt:[0,1,3,4,5,6],encrypted_mdu:4,encryptionless:[],end:[0,3,4,5,6],endless:3,endpoint:[0,3,4,5],engin:5,enough:1,ensur:5,enter:0,entir:[3,5],entiti:5,entri:[0,5],enumer:0,environ:5,environment:5,environmentlogg:5,ephemer:[3,4,5,6],equal:[3,5],equip:[3,5],equl:[],error:0,essenti:5,establish:[0,4,6],established_callback:4,establishment_timeout_per_hop:4,ethernet:[1,3,5,6],even:[3,5,6],everi:[0,3,4,5],everyon:[3,5],everyth:[0,3,5],evolv:3,exact:5,exactli:[4,5],exampl:[1,2,4,5,6],example_util:0,exampleannouncehandl:0,exce:0,except:[0,5],exchang:[3,4,5,6],execut:[0,4],exhaust:5,exist:[0,1,5,6],exit:[0,1,4],exit_handl:0,expand:5,expect:[0,4,5],experi:[1,5],experiment:6,explain:4,explan:5,explicit:4,explicitli:[],explor:[0,5,6],expos:4,extend:[0,5],extern:[4,6],extra:3,extrem:6,fa7ddfab5213f916dea:5,face:1,fact:[5,6],fail:[0,4],failed_callback:[0,4],fals:[0,4],far:[3,5],fast:2,featur:[5,6],feed:4,feedback:0,fernet:6,few:[3,5,6],field:5,file:[0,1,3,4,5,6],file_resourc:0,file_s:0,filelist:0,filelist_data:0,filelist_receiv:0,filelist_timeout_job:0,filenam:0,filetransf:[1,2,4],filter:[0,3,5],find:[3,5],firmwar:5,first:[0,1,4,5],fit:0,five:0,fix:5,flag:[4,5],flow:3,flush:0,folder:1,follow:[0,5,6],forcibl:4,foremost:6,form:[3,4,5],format:[0,2,6],forth:0,forward:[4,5,6],found:[0,1,3,5],four:3,free:6,frequenc:5,friendli:6,from:[0,1,3,4,5,6],from_byt:4,from_fil:4,fromhex:0,fruit:0,full:[0,4,5],full_hash:4,full_nam:4,fulli:[5,6],funcion:4,fundament:5,further:[1,2],futur:[3,5],g:0,ga:0,gatekeep:5,gatewai:3,gen:1,gener:[0,3,4,5,6],generalis:6,geograph:3,get:[0,2,4,6],get_private_kei:4,get_progress:[0,4],get_public_kei:4,get_random_hash:[0,4],get_remote_ident:[0,4],get_request_id:4,get_respons:4,get_response_tim:4,get_rtt:[0,4],get_statu:4,gi:0,gigabyt:6,gipsum:[],git:1,github:[0,1],give:5,given:[3,5],global:[0,3,6],go:[0,1,5],goal:2,good:[3,5],got:0,got_respons:0,govern:5,grape:0,great:5,greater:5,group:[4,5],grow:3,growth:2,guarante:5,guid:[1,4,5],h:[1,5],ha:[0,3,4,5,6],had:5,half:[5,6],hand:0,handheld:5,handl:[0,3,4,5,6],handler:[0,4],happen:[0,4],hardlin:3,hardwar:[3,4,5,6],has_path:[0,4],hasattr:0,hash:[0,1,4,5],hash_from_name_and_ident:4,hashmap:0,have:[0,1,3,4,5],hazard:4,header:5,header_1:5,header_2:5,header_typ:[],hear:5,heard:[4,5],helium:0,hellman:[3,5,6],help:[0,3,5,6],her:3,here:[0,5],hexadecim:[0,5],high:[5,6],higher:[5,6],highli:5,hill:3,hint:0,hit:0,hmac:6,hoc:6,hold:[4,5],home:3,hop:[3,4,5,6],hops_to:4,host:[0,5,6],hour:0,how:[0,3,5,6],howev:[3,5],http:[0,1],human:[0,4],i:0,id:[4,5],idea:5,ident:[0,2],identif:[2,6],identifi:[0,4,5],identify:5,identifyexampl:0,ie:[],ignor:[4,5],illustr:3,immedi:1,impact:5,implement:[0,3,4,5,6],implicit:[4,5],inactive_for:4,inbound:4,includ:[0,1,4,5],incom:[0,4],incompat:[4,5],indefinit:5,independ:4,independt:6,index:[0,2],indirectli:5,individu:5,inevit:5,infer:5,info:[4,5],inform:[0,1,2,3,4,5],infrastructur:[3,5],ingo:4,initi:[0,3,4,5],initialis:[0,4],input:0,insert:5,inspect:3,instal:[1,3],instanc:[0,4],instanti:4,instead:[0,5],integr:[3,5],intend:[3,5],intention:5,inter:4,interact:[0,4,5],interconnect:2,interest:5,interfac:[0,1,2,4,5],intern:[4,5],internet:[1,2,5,6],interv:4,intiat:0,introduc:5,introduct:2,intuit:6,invalid:[0,4],investig:[3,5],involv:3,ip:[5,6],is_request:[],is_respons:[],isdir:0,isfil:0,island:3,ism:5,its:[4,5],itself:[2,5],iv:6,job:0,join:[0,5],just:[0,3,5,6],k:0,kbp:5,keep:[0,3,4,5,6],keepal:[4,5],kei:[0,2,3,4,6],kept:[3,4,5],kernel:6,keyboardinterrupt:0,keyerror:4,keypair:5,keysiz:4,keystor:3,ki:0,kill:4,kilomet:5,kind:[3,5],know:[0,3,4,5],knowledg:[3,5],known:[0,4,5],krypton:0,lack:5,laid:5,larg:[0,3,5],larger:5,last:[0,4],last_unit:0,latenc:[5,6],later:0,latest:[0,1],latest_client_link:0,launch:1,lavg:5,layer:[3,5,6],lead:5,learn:[0,5],least:[5,6],leav:[3,5],ledger:5,left:[4,5],len:0,length:[0,4],less:[3,5,6],let:[0,3,5],level:5,librari:1,licens:5,light:5,like:[1,4,5,6],limit:5,line:[0,1,3,5,6],link:[2,3,6],link_clos:0,link_establish:0,linkexampl:0,linux:5,list:[0,4,5],list_deliv:0,list_fil:0,list_packet:0,list_receipt:0,list_timeout:0,listdir:0,listen:[0,5],littl:5,lki:5,lkr:5,ll:[0,1,6],ln:1,load:[0,4],load_private_kei:4,load_public_kei:4,local:[0,1,3,4,5,6],locat:[1,3,5],log:0,log_error:0,log_info:0,loglevel:[0,4],longer:[0,3,5],look:[0,1,5],loop:0,lora:[1,2,5,6],lorawan:5,lot:5,low:[3,5,6],lxmf:1,m:[0,5],mac:5,machin:5,made:[4,5],mai:5,main:0,mainli:3,maintain:5,make:[1,5],malici:5,manag:4,mani:[0,3,5,6],manipul:5,manual:[0,1,4],mark:5,markqvist:[0,1],master:[0,4],match:[0,3],maximum:[4,5],mcu:5,mdu:0,mean:5,measur:5,mechan:2,medium:[3,5,6],member:3,memori:5,mention:5,menu:0,menu_mod:0,mesh:[3,6],messag:[0,1,4,5],messeng:5,metavar:0,method:[0,4,5],methodolog:5,mhz:5,mi:0,microcontrol:5,microwav:5,might:[3,5],millisecond:0,mind:[3,6],minim:[2,5],minimalsampl:0,minimum:[0,3,5],minut:[0,5],mix:3,mode:[0,1,5,6],modem:[3,4,5,6],modul:[0,5,6],moment:[5,6],monitor:5,moon:0,mor:[],more:[1,3,4,5,6],most:[1,3,5,6],motiv:2,move:1,mqtt:3,mtu:[4,5,6],much:5,multi:[5,6],multilater:5,multipl:[0,3,5],multipoint:5,must:[0,3,4,5],my:5,n:0,name:[0,3,4],namespac:0,nano:1,narg:0,necesarri:3,necessari:[1,4,5],necessarili:5,need:[0,1,2,3,5,6],neglig:5,neither:5,neon:0,netifac:1,network:[0,4,5,6],never:4,newer:5,newest:5,newli:[3,5],next:[1,3,4,5],next_hop:4,next_hop_interfac:4,nicknam:5,no_inbound_for:4,no_outbound_for:4,nobl:0,noble_ga:0,noble_gas:0,node:[2,3,6],nomad:1,nomadnet:1,non:[4,5],none:[0,4,5],normal:0,notat:5,note:[0,5],noth:6,notic:5,notif:[0,4],now:[0,1,3,5],nt:0,num:0,number:[0,1,3,4,5],object:4,obtain:5,occur:6,off:[5,6],offer:[2,4,5],often:[3,5],oganesson:0,old:5,onc:[0,3,4,5,6],one:[0,1,3,4,5,6],onli:[0,1,3,4,5,6],onlin:5,open:[0,4,5,6],openmodem:6,oper:[3,4,5,6],opt:5,optic:6,optim:3,option:[0,1,3,4],orem:[],organis:3,orient:5,origin:[0,3,5],original_hash:[],os:[0,5,6],ospf:5,other:[1,3,4,5],otherwis:[4,5],our:[0,5],out:[0,3,4,5,6],outbound:4,outgo:[0,4,5],outli:3,outlier:3,outlin:[1,5],outward:5,over:[0,1,2,4,5,6],overal:5,overcom:5,overhead:5,overrid:0,overview:[2,5],own:[0,1,3,4,5],owner:[],p:[0,5],pack:0,packb:0,packet:[0,1,2,3,6],packet_callback:0,packet_deliv:0,packet_receipt:[0,4],packet_timed_out:0,packet_typ:[],packetreceipt:[0,4],pad:6,page:[2,5],pair:5,palm:0,paramet:[3,4],pars:0,parse_arg:0,parser:0,part:[0,3,5],particip:[2,5],pass:[0,3,4,5],path:[0,1,4,5],path_respons:4,pathfind:[],pathfinder_m:4,pattern:5,payload:[4,5],peach:0,peer:[0,1,4,5],peer_pub_byt:[],peer_sig_pub_byt:[],peopl:5,per:[4,5,6],percent:0,perfect:5,perform:[0,3,5],period:5,persecut:5,person:5,pet:0,philosophi:5,physic:5,pi:[0,3,5,6],piec:5,ping:1,pip3:1,pip:1,pkcs7:6,place:[3,5],plain:[0,4,5],plain_mdu:4,plaintext:[0,4],plan:3,platform:5,pleas:[0,6],plenti:5,plu:5,pmr:5,point:[3,5],pomelo:0,poorli:3,port:[3,5,6],possess:5,possibl:[1,3,4,5,6],potenti:[0,5],practic:[5,6],pre:[4,5],predict:5,prefer:5,prepar:[0,3],prerequisit:4,presenc:4,preserv:4,press:0,pretend:5,pretti:5,prettyhexrep:0,previou:0,previous:[3,4,5],primari:5,principl:[5,6],print:0,print_filelist:0,print_help:0,print_menu:0,prioriti:5,prioritis:[2,3],privaci:6,privat:[4,5,6],probabl:[0,3,5,6],procedur:5,process:[1,4,5],product:[],program:[0,2,4,5],program_setup:0,programm:5,programmat:5,progress:[0,4,6],progress_callback:4,project:1,prompt:0,proof:[0,4,5],proof_requested_callback:4,proof_strategi:4,propag:5,properti:4,protocol:[1,2,6],prove:[0,5],prove_al:[0,4],prove_app:4,prove_non:4,proven:[4,5],provid:[0,1,2,3,4,5,6],prv_byte:4,pub_byt:4,public_inform:0,purchas:[3,5,6],purg:4,purpos:[4,5],purposefulli:5,put:0,py:[0,1],pyseri:1,python3:1,python:[5,6],q:0,queri:0,queue:5,quinc:0,quit:0,r:[0,5],radio:[1,3,4,5,6],radiu:5,radon:0,rais:[0,4],rand:5,randint:0,random:[0,4,5],random_text_gener:0,randomli:[0,5],rang:[0,1,3,5,6],raspberri:[3,5,6],rate:0,rb:0,re:[0,4,5],reach:[2,3],reachabl:[0,3,4,5],read:[0,1,5],readabl:[0,4,5],readi:[0,1,3,4],readili:6,real:[3,6],realli:4,reason:5,reassembl:5,recal:[0,4],recall_app_data:4,recap:5,receipt:[0,2,5],receiv:[0,4,5],received_announc:[0,4],recip:1,recipi:5,recommend:[0,5],reconstruct:5,record:5,recreat:5,refer:[0,1,2],regard:5,regist:[0,4],register_announce_handl:[0,4],register_request_handl:[0,4],rel:[5,6],releas:[1,5],relev:[0,4],reli:5,reliabl:[3,5,6],rem:0,remain:5,rememb:5,remot:[0,4,6],remote_ident:[0,4],remote_identifi:0,remote_identity_hash:[],remote_p:0,remotesensor:5,repeat:1,replac:[1,5],repli:0,replic:5,reply_data:0,reply_text:0,repositori:1,repres:5,represent:[0,5],request:[2,5],request_destin:0,request_fail:0,request_id:[0,4],request_packet:0,request_path:[0,4],request_receipt:[0,4],request_receiv:0,requested_at:[0,4],requestexampl:0,requestreceipt:4,requir:[0,3,5,6],research:6,resend:4,reserv:5,resili:6,resourc:[0,2],resource_callback:4,resource_sending_conclud:0,resource_strategi:4,respond:[0,4],respons:[2,4],response_callback:[0,4],response_gener:[0,4],response_tim:[],rest:[3,6],result:[0,5],reticulum:[0,3],retransmiss:5,retransmit:5,retri:5,reveal:[4,5],review:6,right:3,rn:[0,1,4],rnode:[5,6],robot:5,rotat:5,round:[0,4],rout:[3,4,5,6],rprogress:0,rsa:[],rtt:[0,4,5],rttstring:0,rule:5,run:[0,1,3,4,5,6],runtim:5,rw:5,s:[0,1,3,5,6],said:5,same:[1,4,5],satisfi:5,save:[4,5],save_error:0,saved_filenam:0,scenario:[1,2,5],screen:0,search:2,second:[0,4,5,6],secreci:[4,5,6],section:[3,5],secur:[5,6],see:[0,4,5],seen:5,segment:3,segment_index:[],select:0,self:[0,3,6],send:[0,4,5],sender:[0,3,5],sendig:0,sensibl:1,sensor:5,sent:[0,4,5],sentiment:5,separ:[3,5],sequenc:[0,4,5,6],serial:[5,6],serv:[0,3,5],serve_path:0,server:[0,1],server_callback:0,server_destin:0,server_fil:0,server_ident:0,server_link:0,server_loop:0,server_packet_receiv:0,servic:3,session:5,set:[0,3,4,5,6],set_default_app_data:4,set_delivery_callback:[0,4],set_link_closed_callback:0,set_link_established_callback:[0,4],set_packet_callback:[0,4],set_proof_requested_callback:4,set_proof_strategi:[0,4],set_remote_identified_callback:[0,4],set_resource_callback:4,set_resource_concluded_callback:[0,4],set_resource_started_callback:[0,4],set_resource_strategi:[0,4],set_timeout:[0,4],set_timeout_callback:[0,4],setdaemon:0,setup:[0,2],sever:[3,4],sha256:6,sha:[4,5],shall:5,share:[1,3,4,5],she:3,shelf:[5,6],shop:0,shortest:5,should:[0,3,4,5,6],should_allow_unencrypt:[],should_quit:0,should_use_implicit_proof:4,shown:0,side:6,sight:3,sign:[4,5],signatur:[4,5,6],significantli:[],similar:[3,6],simpl:[0,5,6],simplest:5,simpli:[0,1,3,5],simplic:5,sinc:[0,3,4,5],singl:[0,4,5,6],singular:5,site:2,situat:[3,5],size:[0,4,5],size_str:0,sleep:0,slice:0,slow:[0,5],small:[0,3,5,6],so:[0,1,3,4,5,6],softwar:[5,6],some:[0,1,3,5],someth:5,somethign:0,soon:4,sort:5,sourc:[0,1,3,5,6],space:[0,3,6],span:5,special:5,specif:[0,2,4,6],specifi:[0,1,3,4],spectrum:5,split:0,sponsor:6,stabl:[5,6],stack:[0,1,3,5,6],stage:5,stai:0,standard:5,start:[0,2,4,5],startup:0,state:0,station:5,stationari:3,statist:0,statu:[0,2,4,5],stdout:0,step:1,still:[0,3,5],stock:0,stop:6,store:[0,5],store_tru:0,str:0,strategi:4,stream:5,strength:6,strictli:5,string:[0,4],structur:5,subject:5,subnet:3,subsequ:5,successful:4,successfulli:0,sucessfulli:5,suffic:5,suffici:5,suffix:0,suit:[1,5],suitabl:[0,3,5],suppli:[3,4,5],support:[0,2,5],sy:0,symlink:1,symmetr:[4,5],system:[0,2,4,6],t:[0,1,3,5],tabl:[3,5],take:[0,1,5,6],taken:[0,5],tangerin:0,target:0,tcp:[1,3,5,6],tdata:0,teardown:[0,4],teardown_reason:0,teffect:0,tell:0,temperatur:5,ten:5,term:[3,5],termin:4,terminolog:[3,5],test:5,text:[0,3,5],tfile:0,than:[0,3,5],thei:[0,3,4,5],them:[0,3,5],thereaft:5,therefor:[5,6],thi:[0,1,2,3,4,5],those:3,though:5,thourough:6,thread:0,three:[3,5],throttl:3,through:[3,4,5,6],throughout:5,throughput:[5,6],thu:[3,4,5],ti:[0,5],time:[0,1,3,4,5],timeout:[0,4],timeout_callback:[],timeoutarg:0,timestr:0,tnc:[4,6],to_fil:4,todai:5,todo:[],togeth:5,token:[4,5],too:[0,3,5],tool:6,top:[3,5],topic:5,topographi:3,topolog:[3,5],total:[5,6],total_s:0,touch:6,toward:[0,5],tradit:3,traffic:[0,3,4,5],tramsit:[],transceiv:[5,6],transfer:[0,4,5,6],transfer_s:0,transmiss:5,transmit:[0,5],transpar:5,transport:[0,2,3,6],transport_en:4,transport_id:[],transport_typ:[],travers:5,treat:5,tri:0,trip:[0,4],trivial:6,truli:5,truncat:[4,5],truncated_hash:4,truncated_hashlength:4,trust:5,trustless:[5,6],ttime:0,ttransfer:0,tunnel:[5,6],tupl:4,two:[0,3,5],type:[0,2,3,4],typeerror:4,udp:[3,5,6],umsgpack:0,uncencrypt:0,underli:[3,6],understand:[1,2],unencrypt:[0,4,5],unequivoc:5,unforg:6,unidentifi:0,unifi:3,uninterest:0,uniqu:[5,6],unit:0,unknown:[0,4,5],unless:[1,4,5],unlicens:5,unpack:0,unpackb:0,unsupport:4,until:[0,4,5],unwant:5,up:[0,3,5,6],updat:[0,4],upon:[0,5],upset:0,urandom:6,us:[0,2,3,4,5],usabl:5,usag:[],usb:[3,5,6],useabl:5,user:[0,1,3,5],user_input:0,userland:6,utf:0,util:[0,1,5],utilis:[3,5,6],valid:[0,4,5],valu:[4,5],valueerror:[0,4],variabl:0,varieti:[5,6],variou:[0,5],ve:1,vendor:0,veri:[3,4,5,6],verif:[4,5],verifi:[0,4,5],versa:[3,6],version:[],vhf:[3,5],via:[1,5],vice:[3,6],view:5,virtual:3,visibl:0,wa:[0,3,4,5,6],wai:[0,1,3,5],wait:[0,5],want:[0,1,3,5,6],warrant:6,wb:0,we:[0,5],well:[3,4,5,6],went:0,were:3,what:[0,1,2,4,5],whatev:[4,5],when:[0,1,3,4,5],whenev:4,where:[2,3,4,5],whereupon:5,whether:[0,4,5],which:[0,1,3,4,5],who:5,wide:[5,6],wifi:[3,5,6],wildcard:0,willing:3,window:5,wire:[5,6],wireless:3,wish:5,within:[0,1,3,4,5],without:3,won:0,work:[5,6],world:[3,6],worri:3,would:[3,5],write:[0,4],written:5,wrong:0,x25519:[4,5,6],x:5,xenon:0,y:0,ye:5,year:5,yet:[0,5],yi:0,you:[0,1,2,3,4,5,6],your:[0,1,3,5,6],yourself:[5,6],z:0,zero:[4,6],zeromq:3,zi:0},titles:["Examples","Getting Started Fast","Reticulum Network Stack Manual","Building Networks","API Reference","Understanding Reticulum","What is Reticulum?"],titleterms:{"1":[],"2":[],"class":4,"function":5,"public":5,"try":1,The:5,With:1,announc:[0,5],api:4,base:1,basic:5,binari:5,bridg:3,broadcast:0,build:3,can:6,caveat:6,concept:3,converg:3,creat:1,current:6,deliveri:[],destin:[4,5],detail:5,develop:1,devic:6,doe:6,echo:0,emptor:6,establish:5,exampl:[0,3],fast:1,filetransf:0,format:5,further:5,get:[1,5],gipsum:[],goal:5,growth:3,ident:[4,5],identif:0,indic:2,interconnect:3,interfac:[3,6],internet:3,introduct:5,kei:5,link:[0,4,5],lora:3,manual:2,mechan:5,minim:0,motiv:5,name:5,network:[1,2,3],node:5,offer:6,orem:[],over:3,overview:3,packet:[4,5],particip:1,pathfind:[],prioritis:5,program:1,protocol:5,proven:[],reach:5,receipt:4,refer:[4,5],request:[0,4],resourc:[4,5],respons:0,reticulum:[1,2,4,5,6],scenario:3,setup:5,site:3,specif:5,stack:2,start:1,statu:6,step:[],support:[3,6],system:5,tabl:2,transport:[4,5],type:[5,6],understand:5,us:[1,6],what:6,where:6}})
\ No newline at end of file

diff --git a/docs/manual/understanding.html b/docs/manual/understanding.html
index a516843b7..38534959f 100644
--- a/docs/manual/understanding.html
+++ b/docs/manual/understanding.html
@@ -5,7 +5,7 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>Understanding Reticulum &#8212; Reticulum Network Stack 0.2.5 beta documentation</title>
+ <title>Understanding Reticulum &#8212; Reticulum Network Stack 0.2.6 beta documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/classic.css" />
@@ -31,7 +31,7 @@
<li class="right" >
<a href="gettingstartedfast.html" title="Getting Started Fast"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Understanding Reticulum</a></li>
</ul>
</div>
@@ -853,7 +853,7 @@ proof 11
<li class="right" >
<a href="gettingstartedfast.html" title="Getting Started Fast"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Understanding Reticulum</a></li>
</ul>
</div>

diff --git a/docs/manual/whatis.html b/docs/manual/whatis.html
index 5774f5d14..158dd98eb 100644
--- a/docs/manual/whatis.html
+++ b/docs/manual/whatis.html
@@ -5,7 +5,7 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>What is Reticulum? &#8212; Reticulum Network Stack 0.2.5 beta documentation</title>
+ <title>What is Reticulum? &#8212; Reticulum Network Stack 0.2.6 beta documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/classic.css" />
@@ -31,7 +31,7 @@
<li class="right" >
<a href="index.html" title="Reticulum Network Stack Manual"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">What is Reticulum?</a></li>
</ul>
</div>
@@ -45,8 +45,8 @@
<h1>What is Reticulum?<a class="headerlink" href="#what-is-reticulum" title="Permalink to this headline">¶</a></h1>
<p>Reticulum is a cryptography-based networking stack for wide-area networks built on readily available hardware, and can operate even with very high latency and extremely low bandwidth.</p>
<p>Reticulum allows you to build very wide-area networks with off-the-shelf tools, and offers end-to-end encryption, autoconfiguring cryptographically backed multi-hop transport, efficient addressing, unforgeable packet acknowledgements and more.</p>
-<p>Reticulum is a complete networking stack, and does not use IP or higher layers, although it is easy to utilise IP (with TCP or UDP) as the underlying carrier for Reticulum. It is therefore trivial to tunnel Reticulum over the Internet or private IP networks. Reticulum is built directly on cryptographic principles, allowing resilience and stable functionality in open and trustless networks.</p>
-<p>No kernel modules or drivers are required. Reticulum runs completely in userland, and can run on practically any system that runs Python 3.</p>
+<p>Reticulum is a complete networking stack, and does not need IP or higher layers, although it is easy to utilise IP (with TCP or UDP) as the underlying carrier for Reticulum. It is therefore trivial to tunnel Reticulum over the Internet or private IP networks. Reticulum is built directly on cryptographic principles, allowing resilience and stable functionality in open and trustless networks.</p>
+<p>No kernel modules or drivers are required. Reticulum runs completely in userland, and can run on practically any system that runs Python 3. Reticulum runs well even on small single-board computers like the Pi Zero.</p>
<div class="section" id="current-status">
<h2>Current Status<a class="headerlink" href="#current-status" title="Permalink to this headline">¶</a></h2>
<p>Reticulum should currently be considered beta software. All core protocol features are implemented and functioning, but additions will probably occur as real-world use is explored. There will be bugs. The API and wire-format can be considered relatively stable at the moment, but could change if warranted.</p>
@@ -182,7 +182,7 @@ network, and vice versa.</p>
<li class="right" >
<a href="index.html" title="Reticulum Network Stack Manual"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.5 beta documentation</a> &#187;</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Reticulum Network Stack 0.2.6 beta documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">What is Reticulum?</a></li>
</ul>
</div>

diff --git a/docs/source/conf.py b/docs/source/conf.py
index 17a96cb7a..09106b776 100644
--- a/docs/source/conf.py
+++ b/docs/source/conf.py
@@ -22,7 +22,7 @@ copyright = '2021, Mark Qvist'
author = 'Mark Qvist'
# The full version, including alpha/beta/rc tags
-release = '0.2.5 beta'
+release = '0.2.6 beta'
# -- General configuration ---------------------------------------------------

diff --git a/docs/source/gettingstartedfast.rst b/docs/source/gettingstartedfast.rst
index 9082e99e2..8f65586db 100644
--- a/docs/source/gettingstartedfast.rst
+++ b/docs/source/gettingstartedfast.rst
@@ -23,14 +23,35 @@ You can install Nomad Network via pip:
.. code::
- # Install
+ # Install ...
pip3 install nomadnet
- # And run
+ # ... and run
nomadnet
+Creating a Network With Reticulum
+=============================================
+
+To create a network, you will need to specify one or more *interfaces* for
+Reticulum to use. This is done in the Reticulum configuration file, which by
+default is located at ``~/.reticulum/config``.
+
+When Reticulum is started for the first time, it will create a default
+configuration file, with one active interface. This default interface uses
+your existing ethernet network (if there is one), and only allows you to
+communicate with other Reticulum peers within your local broadcast domain.
+
+To communicate further, you will have to add one or more interfaces. The default
+configuration includes a number of examples, ranging from using TCP over the
+internet, to LoRa and Packet Radio interfaces.
+
+Possibly, the examples in the config file are enough to gen you started. If
+you want more information, you can read the :ref:`Interfaces<interfaces-main>`
+chapter of this manual.
+
+
Develop a Program with Reticulum
===========================================
If you want to develop programs that use Reticulum, the easiest way to get
@@ -56,7 +77,7 @@ don't use pip, but try this recipe:
.. code::
# Install dependencies
- pip3 install cryptography pyserial
+ pip3 install cryptography pyserial netifaces
# Clone repository
git clone https://github.com/markqvist/Reticulum.git

diff --git a/docs/source/index.rst b/docs/source/index.rst
index bafc699d7..418fc0cf6 100644
--- a/docs/source/index.rst
+++ b/docs/source/index.rst
@@ -10,6 +10,7 @@ the development of Reticulum itself.
whatis
gettingstartedfast
+ networks
understanding
reference
examples

diff --git a/docs/source/whatis.rst b/docs/source/whatis.rst
index 9b9e1280a..9c8b21997 100644
--- a/docs/source/whatis.rst
+++ b/docs/source/whatis.rst
@@ -6,9 +6,9 @@ Reticulum is a cryptography-based networking stack for wide-area networks built
Reticulum allows you to build very wide-area networks with off-the-shelf tools, and offers end-to-end encryption, autoconfiguring cryptographically backed multi-hop transport, efficient addressing, unforgeable packet acknowledgements and more.
-Reticulum is a complete networking stack, and does not use IP or higher layers, although it is easy to utilise IP (with TCP or UDP) as the underlying carrier for Reticulum. It is therefore trivial to tunnel Reticulum over the Internet or private IP networks. Reticulum is built directly on cryptographic principles, allowing resilience and stable functionality in open and trustless networks.
+Reticulum is a complete networking stack, and does not need IP or higher layers, although it is easy to utilise IP (with TCP or UDP) as the underlying carrier for Reticulum. It is therefore trivial to tunnel Reticulum over the Internet or private IP networks. Reticulum is built directly on cryptographic principles, allowing resilience and stable functionality in open and trustless networks.
-No kernel modules or drivers are required. Reticulum runs completely in userland, and can run on practically any system that runs Python 3.
+No kernel modules or drivers are required. Reticulum runs completely in userland, and can run on practically any system that runs Python 3. Reticulum runs well even on small single-board computers like the Pi Zero.
Current Status

Served by rngit 1.5.1 - Generated in 0.17s